package com.tedu.API.threadAPI;

/**
 * Thread类 线程同步
 * join()
 * 作用：允许在一个线程上等待另外一个线程执行完毕，再执行自己
 *用法：线程名.join()，用在另一个线程
 *
 * 线程同步:执行线程先后顺序
 * 线程异步：执行线程没有顺序，各自完成各自线程的功能
 *
 * 模拟：下载功能，显示图片功能
 *     显示 download 功能：下载进度条1%--100% 100毫秒
 *     线程 show 功能：显示图片
 *
 */
public class Thread_join {
    public static void main(String[] args) {
        //下载线程
        Thread download=new Thread(()->{
            for (int i=0;i<=100;i++){
                System.out.println("下载进度："+i+"%");
                try {
                    Thread.sleep(100);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
            }
        });
        Thread show=new Thread(()->{
            try {
                download.join();
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
            System.out.println("显示图片");
        });
        download.start();
        show.start();
    }
}
